﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Gustozzi.DAL;
using System.Text;

namespace WebGustozzi.ModuloVentas
{
    public partial class wfBuscarProducto : System.Web.UI.Page
    {

        #region "Variables"
        VentasDataEntities contexto = null;
        #endregion

        #region "Eventos Pagina"
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Inicializar();
            }
            else
            {
                hdf_InicioGrilla.Value = "N";
            } 
        }

        protected void grvListaPedidos_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (hdf_InicioGrilla.Value == "N")
            {
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    e.Row.Attributes["OnClick"] = Page.ClientScript.GetPostBackClientHyperlink(this.grvListaProductos, "Select$" + e.Row.RowIndex.ToString());

                    BuscarProducto_Result oItem = (BuscarProducto_Result)e.Row.DataItem;
                    hdfBase.Value= Request.QueryString["hdfBase"];
                    StringBuilder strConstructor = new StringBuilder();
                    if (hdfBase.Value.ToString().Equals(String.Empty))
                    {
                        string sNavigateURL = String.Format("window.opener.document.getElementById('txtCodigoProducto').value=\"{0}\";"
                        , oItem.codigoProducto);
                        strConstructor.Append(sNavigateURL);
                    }
                    else
                    {
                        string sNavigateURL = String.Format("window.opener.document.getElementById('CPHPrincipal_txtCodigoProducto').value=\"{0}\";"
                        , oItem.codigoProducto);
                        strConstructor.Append(sNavigateURL);
                    }                    

                    strConstructor.Append("window.close();");

                    ((LinkButton)(e.Row.Cells[6].Controls[0])).Attributes.Add("onclick", strConstructor.ToString());
                }
            }
        }

        protected void grvListaPedidos_SelectedIndexChanged(object sender, EventArgs e)
        {

        }
        #endregion
        #region "Eventos generados"
        public void Inicializar()
        {
            VentasDataEntities contexto = new VentasDataEntities();
            var comboCatProd = from cat in contexto.CategoriasProductos
                               select cat;

            ddlCategorias.DataSource = comboCatProd;
            ddlCategorias.DataValueField = "codigoCategoriaPdto";
            ddlCategorias.DataTextField = "descripcion";
            ddlCategorias.DataBind();

            hdf_InicioGrilla.Value = "S";
        }

        #endregion

        protected void btnBuscar_Click(object sender, EventArgs e)
        {
            try
            {
                if (contexto == null) 
                {
                    contexto = new VentasDataEntities();
                }

                int idCategoria = 0;
                string nombre = string.Empty;
                string estado = string.Empty;
                if (ddlCategorias.SelectedValue != string.Empty)
                {
                    idCategoria = Convert.ToInt32(ddlCategorias.SelectedValue);
                    nombre = txtNombreProducto.Text;
                    estado = rblEstado.SelectedValue;

                    List<BuscarProducto_Result> resultadoProd = contexto.BuscarProducto(idCategoria, nombre, estado).ToList();
                    grvListaProductos.DataSource = resultadoProd;
                    grvListaProductos.DataBind();

                }

            }
            catch (Exception)
            {

                throw;
            }
        }

    }
}